package Ventanas;

import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JComboBox;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JOptionPane;

import ClasesBasicas.Cliente;
import Gestores.SistemaCliente;
import Gestores.SistemaCuestionario;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.sql.SQLException;
import java.awt.Toolkit;
import javax.swing.ImageIcon;
import java.awt.Color;

public class ventanaCuestionario extends JFrame {

	/**
	 * 
	 */
	private static final long serialVersionUID = -8995199612367792988L;
	private JPanel contentPane;
	private Cliente c = new Cliente();
	private JComboBox comboBox;
	private JComboBox comboBox_1;
	private JComboBox comboBox_2;
	private JComboBox comboBox_3;
	

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					ventanaCuestionario frame = new ventanaCuestionario();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public ventanaCuestionario() {
		setResizable(false);
		setIconImage(Toolkit.getDefaultToolkit().getImage("src\\Fotos\\txoPizzeria.jpg"));
		setTitle("Cuestionario");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 553, 363);
		contentPane = new JPanel();
		contentPane.setBackground(Color.WHITE);
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		JLabel lblEvaluaLaRapidez = new JLabel("Evalua la rapidez del servicio: ");
		lblEvaluaLaRapidez.setBounds(20, 40, 185, 24);
		contentPane.add(lblEvaluaLaRapidez);
		
		comboBox = new JComboBox();
		comboBox.setModel(new DefaultComboBoxModel(new String[] {"", "0", "1", "2", "3", "4", "5"}));
		comboBox.setBounds(247, 42, 34, 20);
		contentPane.add(comboBox);
		
		JLabel lblEvaluaLaCalidad = new JLabel("Evalua la calidad de nuestro cat\u00E1logo:");
		lblEvaluaLaCalidad.setBounds(20, 86, 221, 20);
		contentPane.add(lblEvaluaLaCalidad);
		
		comboBox_1 = new JComboBox();
		comboBox_1.setModel(new DefaultComboBoxModel(new String[] {"", "0", "1", "2", "3", "4", "5"}));
		comboBox_1.setBounds(247, 86, 34, 20);
		contentPane.add(comboBox_1);
		
		JLabel lblEvaluaNuestroSistema = new JLabel("Evalua nuestro sistema de puntos:");
		lblEvaluaNuestroSistema.setBounds(20, 129, 201, 20);
		contentPane.add(lblEvaluaNuestroSistema);
		
		JLabel lblPuntuaNuestroEstablecimiento = new JLabel("Puntua nuestro establecimiento: ");
		lblPuntuaNuestroEstablecimiento.setBounds(20, 171, 201, 14);
		contentPane.add(lblPuntuaNuestroEstablecimiento);
		
		comboBox_2 = new JComboBox();
		comboBox_2.setModel(new DefaultComboBoxModel(new String[] {"", "0", "1", "2", "3", "4", "5"}));
		comboBox_2.setBounds(247, 129, 34, 20);
		contentPane.add(comboBox_2);
		
		comboBox_3 = new JComboBox();
		comboBox_3.setModel(new DefaultComboBoxModel(new String[] {"", "0", "1", "2", "3", "4", "5"}));
		comboBox_3.setBounds(247, 168, 34, 20);
		contentPane.add(comboBox_3);
		
		JButton btnAtras = new JButton("Atras");
		btnAtras.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				setVisible(false);
				ventanaClienteLogeado v=new ventanaClienteLogeado();
				v.setCliente(getC());
				v.setLocationRelativeTo(null);
				v.setVisible(true);
			}
		});
		btnAtras.setBounds(40, 276, 103, 24);
		contentPane.add(btnAtras);
		
		JButton btnEnviarDatos = new JButton("Enviar datos");
		btnEnviarDatos.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				try {
				if(comboBox.getSelectedItem().toString().equals("")||comboBox_1.getSelectedItem().toString().equals("")||
						comboBox_2.getSelectedItem().toString().equals("")||comboBox_3.getSelectedItem().toString().equals("")){
					
					JOptionPane.showMessageDialog(null,"Debe de puntuar todas las preguntas","Error",JOptionPane.ERROR_MESSAGE);
				}
				else if(c.getRealizadoC()==0){
					SistemaCuestionario.conectar();
					int Puntos1=Integer.parseInt(comboBox.getSelectedItem().toString());
					int Puntos2=Integer.parseInt(comboBox_1.getSelectedItem().toString());
					int Puntos3=Integer.parseInt(comboBox_2.getSelectedItem().toString());
					int Puntos4=Integer.parseInt(comboBox_3.getSelectedItem().toString());
					SistemaCuestionario.actualizarCuestionario(Puntos1, Puntos2, Puntos3, Puntos4);
					SistemaCuestionario.desconectar();
					SistemaCliente.conectar();	
					SistemaCliente sc=new SistemaCliente();
					sc.ActualizarCuestionarioR(c.getCodigo());
					sc.ActualizarPuntos(c.getCodigo(),5);
					SistemaCliente.desconectar();
					c.setRealizadoC(1);
					c.setPuntos(c.getPuntos()+1);
					
					JOptionPane.showMessageDialog(null, "Los datos han sido enviados");
					setVisible(false);
					ventanaClienteLogeado v=new ventanaClienteLogeado();
					v.setLocationRelativeTo(null);
					v.setCliente(c);
					v.setVisible(true);
					
				}
				else{
					JOptionPane.showMessageDialog(null,"Ya ha contestado al cuestionario anteriormente","Error",JOptionPane.ERROR_MESSAGE);
				}
					
				} catch (ClassNotFoundException | SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				
			}
		});
		btnEnviarDatos.setBounds(351, 277, 115, 23);
		contentPane.add(btnEnviarDatos);
		
		JLabel label = new JLabel("");
		label.setIcon(new ImageIcon("src\\Fotos\\cuestionario.jpg"));
		label.setBounds(294, 11, 233, 241);
		contentPane.add(label);
	}
	public Cliente getC() {
		return c;
	}

	public void setC(Cliente c) {
		this.c = c;
	}
}
